#include "mainwindow.h"
#include "mydialog.h"

#include <QPushButton>
#include <QLabel>
#include <QVBoxLayout>
#include <QDebug>

MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
{
    QWidget *central = new QWidget(this);
    setCentralWidget(central);

    openDialogButton = new QPushButton("打开对话框", this);
    statusLabel = new QLabel("等待操作...", this);

    QVBoxLayout *layout = new QVBoxLayout(central);
    layout->addWidget(openDialogButton);
    layout->addWidget(statusLabel);

    connect(openDialogButton, &QPushButton::clicked, this, &MainWindow::openDialog);
}

void MainWindow::openDialog()
{
    MyDialog dlg(this);  // 传递主窗口指针给对话框，注意是栈变量

    dlg.exec();
}

void MainWindow::doSomething()
{
    qDebug() << "MainWindow::doSomething() 被调用";

    // 这里更新界面状态标签作为演示
    statusLabel->setText("主窗口函数 doSomething() 被调用！");
}
